]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
scripting: Exit helper after running test
authorJonas Ådahl <jadahl@gmail.com>
Tue, 16 Aug 2022 10:40:57 +0000 (12:40 +0200)
committerJonas Ådahl <jadahl@gmail.com>
Fri, 25 Nov 2022 21:09:37 +0000 (22:09 +0100)
This avoids the helper process exiting with an error due to a broken
pipe.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1349>

data/dbus-interfaces/org.gnome.Shell.PerfHelper.xml
js/ui/scripting.js

index 98fea27e9434acd27c0c04734f6273c6a6a922a9..140bbcc3457a246c8e9bc221a256e02bfac48670 100644 (file)
@@ -1,5 +1,6 @@
 <node>
   <interface name="org.gnome.Shell.PerfHelper">
+    <method name="Exit"/>
     <method name="CreateWindow">
       <arg type="i" direction="in"/>
       <arg type="i" direction="in"/>
index a4d80d74968627680595283e1d4af5ab488f2892..76a74d5e80bf558863064520e0f51ad6b69712fe 100644 (file)
@@ -284,6 +284,15 @@ async function _runPerfScript(scriptModule, outputFile) {
         log(`Script failed: ${err}\n${err.stack}`);
         Meta.exit(Meta.ExitCode.ERROR);
     }
+
+    try {
+        const perfHelper = _getPerfHelper();
+        perfHelper.ExitSync();
+    } catch (err) {
+        log(`Failed to exit helper: ${err}\n${err.stack}`);
+        Meta.exit(Meta.ExitCode.ERROR);
+    }
+
     Meta.exit(Meta.ExitCode.SUCCESS);
 }